//
// Created by Poyyo on 2021/5/25.
//

#ifndef ALDS_VERTEX_H
#define ALDS_VERTEX_H

/**
 * 图的结点类
 */
class Vertex {
private:
    /**
     * 结点的值
     */
    int value;
    /**
     * 结点访问标记
     */
    bool selected;

    /***
     * 结点的唯一标识
     */
    int id;

public:
    Vertex() {};

    Vertex(int id) : id(id), selected(false), value(0) {}

    Vertex(int value, int id) : value(value), selected(false), id(id) {}

    int getValue() const {
        return value;
    }

    void setValue(int value) {
        Vertex::value = value;
    }

    bool isSelected() const {
        return selected;
    }

    void setSelected(bool selected) {
        Vertex::selected = selected;
    }

    int getId() const {
        return id;
    }

    void setId(int id) {
        Vertex::id = id;
    }

};

#endif //ALDS_VERTEX_H
